﻿(function () {
    Buscador = (function (url) {
        Buscador = function (url) {
            return new Buscador.fn.Create();
        }
        Buscador.fn = Buscador.prototype = {
            Url: '',
            Selector: "",
            fn: Buscador.fn,
            objeto: {
                Parametro: ''
            },
            Create: function (url) {
                /// <summary>
                /// @Autor...........: Edney Batista da Silva
                /// @Data............: 23/06/2012
                /// @Descriptio......: Cria um objeto user
                /// </summary>

                var $obj = Buscador.fn;
                $obj.Url = url;
                $obj.objeto.Parametro = $("input[id*='Parametro']'").val();
                return $obj;
            },
            Find: function () {
                /// <summary>
                /// @Autor...........: Edney Batista da Silva
                /// @Data............: 23/06/2012
                /// @Descriptio......: Salva as informações de um cliente via ajax
                /// </summary>
                strU = Buscador.ParseJson(this);
                $.ajax({
                    url: eS.UrlPadrao + this.Url,
                    type: 'post',
                    data: strU,
                    dataType: 'json',
                    contentType: "application/json; charset=utf-8",
                    success: function (e) {
                        alert('Sucess');
                    },
                    error: function (e) {
                        alert('Falha');
                    }
                });
            }
        }
        // fn privada
        var privateFn = function () {
        }
        // fn static

        Buscador.ParseJson = function (objeto) {
            /// <summary>
            /// @Autor...........: Edney Batista da Silva
            /// @Data............: 23/06/2012
            /// @Descriptio......: Converte o objeto user em uma string para passar via json
            /// </summary>
            /// <returns type="String" />

            var jsonStr = '';
            usuario = usr.objeto;
            // percorre as propriedades do objeto
            for (var i in usuario) {
                // monta parte da string com as virgulas e nome da propriedade
                jsonStr += ', ' + i + ' : ';
                value = usuario[i];
                // verifica o tipo da mesma para por ou não aspas
                if (typeof value == 'string') {
                    try {
                        if (customFormat != undefined)
                            value = customFormat(value);
                    } catch (ex) {
                    }
                    jsonStr += '"' + value + '" ';
                }
                else
                    jsonStr += "" + value;
            }
            // retorna o json
            return '{usuario:{' + jsonStr.substring(1) + '}}';
        }
        return Buscador();
    });

    window.Buscador = Buscador;
    return Buscador();
})(window);
